package com.club.football.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.club.football.dto.FeedBackStarDto;
import com.club.football.dto.FeedbackEditDto;
import com.club.football.dto.FeedbackSaveDto;
import com.club.football.dto.PageDto;
import com.club.football.entity.Feedback;
import com.club.football.req.FeedbackPageReq;
import com.club.football.utils.R;
import com.club.football.vo.FeedbackVo;

/**
 * 反馈服务
 *
 * @author 1
 * @date 2024/01/09
 */
public interface FeedbackService extends IService<Feedback> {
    /**
     * 反馈页面
     *
     * @param pageDto         页数到页
     * @param feedbackPageReq 反馈页面请求
     * @return {@link R}
     */
    R<PageDto<Feedback>> feedbackPage(PageDto<Feedback> pageDto, FeedbackPageReq feedbackPageReq);

    /**
     * 反馈保存
     *
     * @param saveDto 将数据保存到
     * @return {@link R}<{@link String}>
     */
    R<String> feedbackAdd(FeedbackSaveDto saveDto);


    /**
     * 反馈编辑
     *
     * @param saveDto 将数据保存到
     * @return {@link R}<{@link String}>
     */
    R<String> feedbackEdit(FeedbackEditDto saveDto);

    /**
     * Set Star
     *
     * @param feedBackStarDto 反馈星形dto
     * @return {@link R}<{@link String}>
     */
    R<String> setStar(FeedBackStarDto feedBackStarDto);

    /**
     * 反馈信息
     *
     * @param feedBackStarDto 反馈星形dto
     * @return {@link R}<{@link Feedback}>
     */
    R<FeedbackVo> feedbackInfo(FeedBackStarDto feedBackStarDto);
}
